      <h1 class="entry-title entry-title-single" itemprop="headline">SAP Bar Code 开发(02) &#8211; 条码生成与输出打印</h1>

    <div class="entry-content entry-content-single entry-content-aside" itemprop="text">
      <p>上篇文章中讲述了<span class='wp_keywordlink'><a href="http://www.sapjx.com/tag/sap" title="SAP" target="_blank">SAP</a></span> Bar Code的几种解决方案；</p>
<p>而本文主要讲述条码的格式类型及其<span class='wp_keywordlink'><a href="http://www.sapjx.com/tag/sap" title="SAP" target="_blank">SAP</a></span>提供的条码格式打印；</p>
<p>&nbsp;</p>
<p><b>1. 条码类型与码制</b></p>
<p>对于条码的类型估计都很熟悉，主要分为一维码和二维码；</p>
<p>然而，条码的码制却是有众多格式，如：</p>
<p>一维码：Code-39、Code-93、 Code-128等</p>
<p>二维码：PDF-417、Data Matrix、Maxi Code、QR Code、Code-49、Code-16K等</p>
<p><span id="more-685"></span></p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_pdf-417.jpg" alt="barcode_02_pdf-417" width="256" height="96" class="alignnone size-full wp-image-686" /><br />
PDF-417</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_qr_code.jpg" alt="barcode_02_qr_code" width="197" height="182" class="alignnone size-full wp-image-687" /><br />
QR-Code</p>
<p>&nbsp;</p>
<p>其中，像Code-39、Code-128、PDF-417、QR Code都是在市场上经常见到的。</p>
<p>下表中对其做了简单区分：</p>
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td valign="top" width="75"><b>类型</b></td>
<td valign="top" width="76"><b>码制</b></td>
<td valign="top" width="473"><b> </b></td>
</tr>
<tr>
<td valign="top" width="75">一维码</td>
<td valign="top" width="76">Code-39</td>
<td valign="top" width="473">（Code 3 of 9）是长度可变的离散型自校验字母数字式码制</td>
</tr>
<tr>
<td valign="top" width="75">一维码</td>
<td valign="top" width="76">Code-128</td>
<td valign="top" width="473">（Code128）    是长度可变的连续型字母数字式码制</td>
</tr>
<tr>
<td valign="top" width="75">二维码</td>
<td valign="top" width="76">PDF-417</td>
<td valign="top" width="473">1848个字符/2729 个数字/500个汉字</td>
</tr>
<tr>
<td valign="top" width="75">二维码</td>
<td valign="top" width="76">QR Code</td>
<td valign="top" width="473">4296个字符/7089个数字/1000个汉字</td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<p><em>注意：</p>
<p><span class='wp_keywordlink'><a href="http://www.sapjx.com/tag/sap" title="SAP" target="_blank">SAP</a></span>标准功能，二维码只能生成 PDF-417码制，对于QR Code码制的生成，需要在客户端(Client) 安装扩展组件（ <a href="http://www.tec-it.com/zh-cn/software/sap/barcode-dll/general/Default.aspx" target="_blank">SAPWIN.DLL</a> ）(点击链接查看)；</p>
<p>当然，这个组件需要额外收费。如若不想扩展该组件，免费方案可以使用Google的图表工具 <a href="https://developers.google.com/chart/infographics/docs/qr_codes" target="_blank">Infographics</a> 生成 QR-Code。</em></p>
<p>只是缺点在于需要外网网络支持，有些企业内部都只允许内部网访问。</p>
<p>&nbsp;</p>
<p><b>2. 定义条码</b></p>
<p>下面通过简单的操作，实现一维条形码的生成。</p>
<p>1).通过 SAPScript 字体维护创建条形码 (T-Code：<b>SE73</b>)</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_sapscript_font_maintenance.jpg" alt="barcode_02_sapscript_font_maintenance" width="392" height="408" class="alignnone size-full wp-image-688" /></p>
<p>在SAPscript字体维护界面，选择系统条形码(System Bar Codes)，然后点击Change，可以看到系统目前存在的条形码：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_sapscript_font_maintenance_change.jpg" alt="barcode_02_sapscript_font_maintenance_change" width="822" height="609" class="alignnone size-full wp-image-689" /></p>
<p>2) 点击新建按钮，在弹出的技术参数界面，选择 “New” 按钮：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_choose_bar_code_technology.jpg" alt="barcode_02_choose_bar_code_technology" width="486" height="148" class="alignnone size-full wp-image-690" /></p>
<p>3) 输入Bar Code 名称和描述：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_create_new_system_bar_code.jpg" alt="barcode_02_create_new_system_bar_code" width="510" height="140" class="alignnone size-full wp-image-691" /></p>
<p>4) 确定后，会出现选择码制的界面：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_bar_code_symbology.jpg" alt="barcode_02_bar_code_symbology" width="294" height="250" class="alignnone size-full wp-image-692" /></p>
<p>5) 有几个条码码制供你选择，选择你需要的码制，提交后会出现界面：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_bar_code_alignment.jpg" alt="barcode_02_bar_code_alignment" width="198" height="228" class="alignnone size-full wp-image-693" /></p>
<p>Normal – 条码方向从做左到右扫描；</p>
<p>Rotated – 条码方向旋转90°，从头到尾扫描；</p>
<p>Inverted – 条码方向旋转180°，从右到左扫描；</p>
<p>Bottomup &#8211; 条码方向旋转270°，从底部到头部扫描；</p>
<p>&nbsp;</p>
<p>6) 选择Normal后，下一步调整条码的长度和高度：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_code_bar_code_parameters.jpg" alt="barcode_02_code_bar_code_parameters" width="310" height="184" class="alignnone size-full wp-image-694" /></p>
<p>Narrow Module Width: 输入控制条码的宽度</p>
<p>Linear Height: 输入控制条码的行高</p>
<p>&nbsp;</p>
<p>7) 保存新建的 Bar Code：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_save_bar_code_definition.jpg" alt="barcode_02_save_bar_code_definition" width="382" height="126" class="alignnone size-full wp-image-695" /></p>
<p>选择 “yes”，即可在Bar Code字体中，查看到刚创建的条码：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_bar_code_fonts_list.jpg" alt="barcode_02_bar_code_fonts_list" width="845" height="131" class="alignnone size-full wp-image-696" /></p>
<p>&nbsp;</p>
<p>8) 执行测试：</p>
<p>选择刚创建的条码(ZSAPJX)后，点击测试执行按钮(或 F6)：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_test_bar_code.jpg" alt="barcode_02_test_bar_code" width="523" height="74" class="alignnone size-full wp-image-697" /></p>
<p>进入测试界面：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_generate_test_data.jpg" alt="barcode_02_generate_test_data" width="654" height="160" class="alignnone size-full wp-image-698" /><br />
&nbsp;</p>
<p>点击执行，在打印预览界面可以看到条码的效果：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_print_preview.jpg" alt="barcode_02_print_preview" width="400" height="259" class="alignnone size-full wp-image-699" /></p>
<p>&nbsp;</p>
<p><b>3. 创建Smartstyle 条码样式</b></p>
<p>在事务码Smartstyle中，输入自定义样式名称后，在字符集（Character Formats）中创建结点：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_character_formats.jpg" alt="barcode_02_character_formats" width="299" height="293" class="alignnone size-full wp-image-700" /><br />
&nbsp;</p>
<p>在Bar Code选项中，选择 ZSAPJX：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_character_formats_bar_code_option.jpg" alt="barcode_02_character_formats_bar_code_option" width="260" height="212" class="alignnone size-full wp-image-701" /></p>
<p>保存后，激活。</p>
<p>&nbsp;</p>
<p><b>4. 通过 Smartforms 输出条码</b></p>
<p>在Smartforms中定义字段时，在字符格式中选择定义的Bar Code字符：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_smartforms_general_attributes.jpg" alt="barcode_02_smartforms_general_attributes" width="647" height="188" class="alignnone size-full wp-image-702" /></p>
<p>保存激活，调用Smartforms程序后，即可输出条码：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_barcode_print_preview.jpg" alt="barcode_02_barcode_print_preview" width="234" height="172" class="alignnone size-full wp-image-703" /></p>
<p>&nbsp;</p>
<p><strong>5. 打印格式配置</strong></p>
<p>由于不同的条码标签有不同的尺寸规格，在配套的标签打印机需要设置之外，在SAP中也应对打印的页面格式需要设置；</p>
<p>输入事务码<strong>SPAD</strong>，进入Spool Administration &#8211; 假脱机管理 界面；创建对应标签规格的页面格式。</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_spool_admin.jpg" alt="barcode_02_spool_admin" width="650" height="310" class="alignnone size-full wp-image-704" /></p>
<p>创建页面格式：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_spool_admin_page_format.jpg" alt="barcode_02_spool_admin_page_format" width="498" height="298" class="alignnone size-full wp-image-705" /><br />
&nbsp;</p>
<p>创建成功后，在Smartforms中调用：</p>
<p><img src="http://www.sapjx.com/wp-content/uploads/2015/03/barcode_02_smartforms_form_attributes_output.jpg" alt="barcode_02_smartforms_form_attributes_output" width="776" height="392" class="alignnone size-full wp-image-706" /></p>
<p>&nbsp;</p>